/*! copyright 2026 Aditude, Inc - Prebid - production - Updated: 2026-02-06T22:28:39.242Z, v1.4.0, patch-PN1j7qIXuE/patch-longform/prebid-load e5ee13bbd31b94a53649 39a957b65f3e1a3aa9a5 */ !function(){var e={86964:function(e,t,r){e.exports=function(){"use strict";function e(e){return"function"==typeof e}var t,i,s,n,o=void 0,a=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)},l=0,d=void 0,u=void 0,h=function(e,t){y[l]=e,y[l+1]=t,2===(l+=2)&&(u?u(w):v())},c="undefined"!=typeof window?window:void 0,p=c||{},f=p.MutationObserver||p.WebKitMutationObserver,g="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"===({}).toString.call(process),b="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel;function m(){var e=setTimeout;return function(){return e(w,1)}}var y=Array(1e3);function w(){for(var e=0;e>>16,0x85ebca6b)^Math.imul(r^r>>>13,0xc2b2ae35),(0x100000000*(2097151&(r=Math.imul(r^r>>>16,0x85ebca6b)^Math.imul(t^t>>>13,0xc2b2ae35)))+(t>>>0)).toString(36)}constructor(e){var t;t=void 0,"key"in this?Object.defineProperty(this,"key",{value:t,enumerable:!0,configurable:!0,writable:!0}):this.key=t,this.key=Symbol.for(this.getObfuscatedKey(e))}}("isRevSharePub");s.enable();var n,o,a,l=(e,t,r=!1,i=!1,s=[],n=[])=>{let o=document.createElement("script");o.async=r,i&&(o.defer=!0),s.forEach(e=>{o.setAttribute("data-"+e.key,e.value)}),n.forEach(e=>{o.setAttribute(e.key,e.value)}),o.src=e,document[t].appendChild(o)},d=((n=d||{}).Head="head",n);/*! js-cookie v3.0.5 | MIT */function u(e){for(var t=1;th.get(e)||!1,p=e=>{let t=window.location.search.match("[?&]"+e+"(?:&|$|=([^&]*))");return t?t[1]?decodeURIComponent(t[1]):"":null},f=e=>{let t=window.location.hash.match("[#&]"+e+"(?:&|$|=([^&]*))");return t?t[1]?decodeURIComponent(t[1]):"":null};function g(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}let b="#339933";var m=((o=m||{})[o.Advanced=0]="Advanced",o[o.None=1]="None",o[o.Standard=2]="Standard",o);let y=1,w=c("aditude_debug")||p("aditude_debug")||f("aditude_debug");w&&(y=2*("99"!=w));class v{setLabel(e,t=b){return this.label={text:e,color:t},this}tag(e,t="black"){return this.tempTag={text:e,color:t},this}clearTag(){this.tempTag=null}enable(e=2){return this.setLevel(e),this}setLevel(e){return this.level=e,this}isAdvanced(){return 0===this.level}isEnabled(){return 1!==this.level}advancedLog(...e){this.isAdvanced()&&this._sendLog("log",this._decorate(e,""))}log(...e){this.isEnabled()&&this._sendLog("log",this._decorate(e,""))}warn(...e){this.isEnabled()&&this._sendLog("warn",this._decorate(e,""))}error(...e){this._sendLog("error",this._decorate(e,""))}table(e=Array,t=null){this.isEnabled()&&console.table(e,t)}group(e,t){this.isEnabled()&&(console.group(e),t(this),console.groupEnd(),this.clearTag())}_sendLog(e,t){let r=[e,"log","debug","info"].find(e=>String(console[e])===`function ${e}() { [native code] }`)||e;console[r](...t)}_getElapsedTime(){if(!v.firstLogTime)return v.firstLogTime=Date.now(),"0ms";let e=Date.now()-v.firstLogTime;return`${e}ms`}_decorate(e,t=""){e=[].slice.call(e),t&&e.unshift(t);let r=[],i=[];if(this.isAdvanced()){let e=this._getElapsedTime();r.push(`%c[${e}]`),i.push("background: grey; color: white; font-size: 9px; padding: 1px 4px; border-radius: 0; margin-right: 1px;")}return r.push("%cCW"),i.push(s("#61B321")),this.label&&this.label.text.length>0&&(r.push("%c"+this.label.text),i.push(s(this.label.color))),this.tempTag&&(r.push("%c"+this.tempTag.text),i.push(s(this.tempTag.color))),e.unshift(...i),e.unshift(r.join("")),e;function s(e){return`display: inline-block; color: #fff; font-size: 9px; background: ${e}; padding: 1px 4px; border-radius: 0; margin-right: 1px;`}}constructor(e){g(this,"labelColor",void 0),g(this,"label",{text:"",color:b}),g(this,"level",y),g(this,"namespace",void 0),g(this,"tempTag",void 0),this.namespace=e}}g(v,"firstLogTime",null);let _={};var E=function(e="default"){return _[e]||(_[e]=new v(e)),_[e]};let R=E("analytics").setLabel("Analytics"),T=new class{get isDisabled(){return"boolean"==typeof window.__RAVEN_ENABLED&&!1===window.__RAVEN_ENABLED}disableTracking(){window.__RAVEN_ENABLED=!1}getGlobal(){return window.Raven=window.Raven||{cmd:[]},window.Raven.cmd=window.Raven.cmd||[],window.Raven}setCustomParams(e){this.push(({config:t})=>{R.log("sending custom param",e),t.setCustom(e)})}setTudeMeta(e){this.push(({config:t})=>{t.setTudeMeta(e)})}recordPageview(){this.push(({events:e})=>{e.pageview()})}recordCustomEvent(e,t){this.push(({events:r})=>{r.sendCustomEvent(e,t)})}recordEvent(e,t){this.push(({events:r})=>{r.send(e,t)})}constructor(){var e,t;e="push",t=e=>{this.isDisabled||this.getGlobal().cmd.push(e)},e in this?Object.defineProperty(this,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):this[e]=t}};window.Raven=window.Raven||{cmd:[]};let S=E("analytics").setLabel("Analytics"),P=async()=>{T.disableTracking()},A=e=>{T.setCustomParams(e)};(async e=>{if(e.disableTrackingExplicitly)return S.log("Tracking explicitly disabled");let{raven:t="standalone"}=e,r="none",i=r&&["standalone","legacy"].includes(r)?r:t;if("legacy"===i){let t=`${e.publisherKeyCw}/${e.wrapper}`,r=new URL(`https://edge.aditude.io/wrapper/${t}/info.json`);try{let e=await fetch(r.toString());if(e.ok){let{p:t,a:r}=await e.json();t&&r||(E().advancedLog("publisher not configured for analytics"),P())}else throw Error(`${e.status} ${e.statusText}`)}catch(e){E().error("analytics config failed to load",e)}}else if("standalone"===i){if(!e.propertyId||""===e.propertyId||window.RavenLoaded)return;let{pbjsGlobals:t,propertyId:r,wrapper:i}=e;window.__RAVEN_ENABLED=!0,window.RavenLoaded=!0,window.Raven=window.Raven||{cmd:[]},window.Raven.initialConfig={globalParams:{wrapper:i},pbjsGlobals:t||["pbjs"],propertyId:r},l(`https://raven-edge.aditude.io/raven/${r}/library.js`,d.Head,!1,!1)}})({publisherKeyCw:"patch-PN1j7qIXuE",propertyId:"patch-main-ExZC6",wrapper:"patch-longform"});let x=30,L=e=>"cw-test-"+e,C=e=>h.get(L(e))||!1,k=(e,t,r=x)=>{h.set(L(e),t,{expires:r})},j=(e,t)=>{let r=t.filter(t=>t.name===e);return r.length>0&&r[0]},I=e=>{let t=Math.floor(1e3*Math.random()+1),r=0,i=0,s=[...e].sort((e,t)=>e.percentage>t.percentage?1:e.percentage({experiment:e,fromCookie:r,trackingId:e+"@"+t.name,variant:t.name,value:t.value});var O=class{variant(e){return this.variants.push(new D(e.name,e.value,e.percentage)),this}pick(e=30){if(this.selectedVariant&&this.pickResponse)return this.pickResponse;let t=C(this.name);if(t){let e=j(t,this.variants);if(e)return this.selectedVariant=e,this.pickResponse=q(this.name,e,!0),this.pickResponse}let r=I(this.variants);if(r)return this.selectedVariant=r,this.pickResponse=q(this.name,r,!1),k(this.name,r.name,e),this.pickResponse;E("experiment").error(`Failed to pick a variant for experiment '${this.name}'`)}constructor(e){$(this,"name",void 0),$(this,"selectedVariant",void 0),$(this,"variants",void 0),$(this,"pickResponse",void 0),this.name=e,this.selectedVariant=!1,this.variants=[]}},N={createExperiment(e){return new O(e)}};let M=new(function(){let e=0;function t(e){let t=[],r=0,i=0;this.push=function(s){r-i>=e&&++i>=e&&(i=0,r=e-1),t[r%e]=s,r++},this.asArray=function(){let s=t.slice(i,Math.min(r,e)),n=t.slice(0,Math.max(r-e,0));return s.concat(n)},this.list=t}function r(t,r){let i=r;for(let r=0;r-1&&o.splice(e,1)}}function l(e,t){let r=Date.now();o.push([e,r]);let a=i(e,s,n),l={topic:e};for(let e=0;e(G=e.AMAZON_HASH_MAP||{},e));let H=function(e=U){return e=e.length>0?e:U,window[e]=window[e]||{cmd:[],que:[]},window[e].cmd=window[e].cmd||[],window[e].que=window[e].que||[],window[e]}(),K=E("GooglePublisherTag").setLabel("GooglePublisherTag","#039be5"),z=new class{setConfig(e){this.config=e}init(){let{enableSingleRequest:e,setForceSafeFrame:t,setCentering:r,disableInitialLoad:i,enableLazyLoad:s,collapseEmptyDivs:n}=this.config;if(this.googleTagInitialized)return;K.log("Initialized",this.config),this.googleTagInitialized=!0;let o=this.getGlobal();this.push(()=>{n&&o.pubads().collapseEmptyDivs(),e&&o.pubads().enableSingleRequest(),t&&o.pubads().setForceSafeFrame(!0),r&&o.pubads().setCentering(!0),i&&o.pubads().disableInitialLoad(),s&&o.pubads().enableLazyLoad(s),o.enableServices()})}addAllEventListeners(){this.eventListenersAdded||(K.log("Adding all event listeners"),this.eventListenersAdded=!0,this.push(()=>{this.addEventListener("slotRenderEnded",e=>{var t,r,i,s,n;let o=Array.isArray(null==e?void 0:e.size)&&0===e.size[0]&&0===e.size[1],a=e.slot,l=null==a?void 0:a.getSlotElementId(),d=document.getElementById(l),u=null==a?void 0:a.getTargetingMap(),h=a.getSizes().filter(e=>e.getWidth&&e.getHeight).map(e=>[e.getWidth(),e.getHeight()]),c=function(e){try{return H.adUnits.find(t=>t.code===e)}catch(e){}return!1}(l),p=String((null==a||null==(t=a.getTargeting("hb_pb"))?void 0:t[0])||"").trim(),f=!!(p&&Number(p)),g=!!(null==a||null==(r=a.getTargeting("amziid"))?void 0:r[0]),b=null==a||null==(i=a.getTargeting("hb_bidder"))?void 0:i[0],m=null==a?void 0:a.getAdUnitPath(),y=null==e?void 0:e.responseIdentifier,w=window.console.warn;window.console.warn=()=>{};let v=(null==a?void 0:a.getResponseInformation())?a.getHtml():"";window.console.warn=w;let _=v.includes("apstag.renderImp"),E=!e.isEmpty,R=a.getResponseInformation(),T=e.campaignId,S=e.lineItemId,P=!!v.match(/(?:prebid-universal|(?:ucTag|pbjs)\.renderAd|window\.pbRender)/),A=[...v.matchAll(//g)].map(e=>e[0].replace(//g,"")),x=null==u||null==(s=u.amzniid)?void 0:s[0],L=null==u||null==(n=u.amznbid)?void 0:n[0],C=G[null==L?void 0:L.replace(/^(v_|o_)/,"")],k=[];C&&k.push(C),isNaN(Number(p))||k.push(p);let j=Math.max(...k),I={aditudeComments:A,amazonBid:C,amzniid:x,isPrebidWin:P,isNative:o,slot:a,adSlot:d,adUnitPath:m,divId:l,prebidUnit:c,hasBid:g||f,hasPrebidBid:f,hbBidder:b,prebidBid:Number(p),targetingMap:u,highBid:j,sizes:h,isAmazonWin:_,filled:E,info:R,orderId:T,lineItemId:S,responseIdentifier:y};M.emit("gpt.slotRenderEnded",I),M.emit("gpt.slotRenderEnded.${divId}",I)})}))}setPrivacySettings(e){let t=this.getGlobal();this.push(()=>{t.pubads().setPrivacySettings(e)})}setPublisherProvidedId(e){let t=this.getGlobal();this.push(()=>{t.pubads().setPublisherProvidedId(e)})}getGlobal(){return window.googletag=window.googletag||{},window.googletag.cmd=window.googletag.cmd||[],window.googletag}pubadsLoaded(){return"function"==typeof this.getGlobal().pubads}destroySlots(e){let t=this.getGlobal();this.push(()=>{M.emit("gpt.destroySlots",{divIds:null==e?void 0:e.map(e=>e.getSlotElementId()),destroyAll:!e.length,slots:e}),t.destroySlots(e)})}destroySlotsByDivIds(e){let t=this.getGlobal();this.push(()=>{t.destroySlots(this.getSlotListByDivIds(e))})}destroyAllSlots(){let e=this.getGlobal();this.push(()=>{e.destroySlots()})}push(e){this.getGlobal().cmd.push(e)}getAllSlots(){return this.pubadsLoaded()?this.getGlobal().pubads().getSlots():[]}getAllSlotDivIds(){return this.getAllSlots().map(e=>e.getSlotElementId())}getSlotByDivId(e){return this.getAllSlots().find(t=>t.getSlotElementId()===e)}getSlotListByDivIds(e){return this.getAllSlots().filter(t=>e.includes(t.getSlotElementId()))}setSlotTargeting(e,t){Object.keys(t).forEach(r=>{e.setTargeting(r,t[r])})}refreshDivIds(e){if(!e.length)return!1;let t=this.getGlobal(),r=this.getSlotListByDivIds(e);return!!r.length&&(this.push(()=>{t.pubads().refresh(r)}),!0)}defineGptSlot({adUnit:e,sizes:t,divId:r}){K.log("Defining slot",{adUnit:e,sizes:t,divId:r});let i=this.getGlobal().defineSlot(e,t,r);if(i)return i.addService(googletag.pubads()),i}defineOutOfPageSlot(e,t){let r=this.getGlobal().defineOutOfPageSlot(e,t);if(r)return r.addService(googletag.pubads()),r}addEventListener(e,t){let r=this.getGlobal();this.push(()=>{r.pubads().addEventListener(e,t)})}setTargeting(e){let t=this.getGlobal();this.push(()=>{Object.keys(e).forEach(r=>{let i=[].concat(e[r]).map(String);t.pubads().setTargeting(r,i)})})}clearTargeting(e){let t=this.getGlobal();this.push(()=>{t.pubads().clearTargeting(e)})}getTargeting(e){return this.getGlobal().pubads().getTargeting(e)}refresh(e){let t=this.getGlobal();this.push(()=>{t.pubads().refresh(e)})}setPageUrl(e){let t=this.getGlobal();this.push(()=>{t.pubads().set("page_url",e)})}updateCorrelator(){let e=this.getGlobal();this.push(()=>{e.pubads().updateCorrelator()})}constructor(){B(this,"googleTagInitialized",!1),B(this,"eventListenersAdded",!1),B(this,"config",void 0)}};function V(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var W=class{setState(e){let t=[];for(let r in e)r in this.props&&(t.push(r),this.props[r]=e[r]);this.isReady||(this.isReady=!0,this.triggerReadyCallbacks()),this.triggerStateChangeCallbacks(t)}onStateChange(e,t){this.onStateChangeCallbacks.push({cb:e,depProps:t})}triggerStateChangeCallbacks(e){this.onStateChangeCallbacks.length<1||this.onStateChangeCallbacks.filter(t=>t.depProps.some(t=>e.includes(t))).forEach(e=>{e.cb(this.props)})}onReady(e){this.isReady?e():this.onReadyCallbacks.push(e.bind(this))}triggerReadyCallbacks(){this.onReadyCallbacks.length<1||(this.onReadyCallbacks.forEach(e=>e()),this.onReadyCallbacks=[])}constructor(e){V(this,"isReady",!1),V(this,"onStateChangeCallbacks",[]),V(this,"onReadyCallbacks",[]),V(this,"props",void 0),this.props=e}};let J=["param1","param2","param3","param4","param5","param6","param7","param8","param9","param10"],Y=new class extends W{getTargeting(){return this.props.targeting}setTargeting(e){this.setState({targeting:function(e){for(var t=1;t{for(let t in M.emit("pageContext.setTargeting",e),z.setTargeting(e),e)M.emit(`pageContext.setTargeting.${t}`,{key:t,value:e[t]}),J.includes(t)&&T.setCustomParams({[t]:e[t]})},["targeting"]);var Q=r(86964).Promise;function X(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class Z{static get(){return this.singleton||(this.singleton=new Z),this.singleton}resolveName(e){let t=this.aliasToKey.get(e);return t||(this.results.has(e)?e:void 0)}createHandle(e){let t=this.results.get(e);return{variantName:()=>t.variant,is:e=>t.variant===e,value:()=>t.value}}setResult(e,t,r=[]){let i=this.results.get(e);for(let s of(i?i.variant!==t.variant&&E().error(`ExperimentManager.setResult conflict for "${e}"`,Error("Conflicting experiment result")):this.results.set(e,t),this.aliasToKey.set(e,e),r))this.aliasToKey.set(s,e);let s=t=>{let r=this.waiters.get(t);if(!r||0===r.length)return;this.waiters.delete(t);let i=this.createHandle(e);for(let e of r){e.timer&&clearTimeout(e.timer);try{e.resolve(i)}catch(e){E().error("ExperimentManager waiter resolve error",e)}}};for(let t of(s(e),r))s(t);return this.createHandle(e)}link(e,t={throwIfMissing:!0}){let r=this.resolveName(e);if(!r){!1!==t.throwIfMissing&&E().error(`ExperimentManager.link missing result for "${e}"`,Error("Experiment not resolved"));return}return this.createHandle(r)}asyncLink(e,t){var r;let i=this.resolveName(e);if(i)return Q.resolve(this.createHandle(i));let s=null!=(r=null==t?void 0:t.timeoutMs)?r:2e4;return new Q((t,r)=>{var i;let n=null!=(i=this.waiters.get(e))?i:[];this.waiters.set(e,n);let o={resolve:t,reject:r,timer:void 0};n.push(o),o.timer=setTimeout(()=>{let t=this.waiters.get(e);t&&this.waiters.set(e,t.filter(e=>e!==o));let i=Error(`ExperimentManager.asyncLink timeout for "${e}" after ${s}ms`);E().error("Experiment link timeout",i),r(i)},s)})}has(e){return!!this.resolveName(e)}reset(e){if(!e){this.results.clear(),this.aliasToKey.clear(),this.waiters.clear();return}let t=this.resolveName(e);if(t){for(let[e,r]of(this.results.delete(t),Array.from(this.aliasToKey.entries())))r===t&&this.aliasToKey.delete(e);let r=this.waiters.get(e);if(r){this.waiters.delete(e);let t=Error(`ExperimentManager.reset while waiters pending for "${e}"`);for(let e of r){e.timer&&clearTimeout(e.timer);try{e.reject(t)}catch(e){E().error("ExperimentManager waiter reject error",e)}}}}}constructor(){X(this,"results",new Map),X(this,"aliasToKey",new Map),X(this,"waiters",new Map)}}X(Z,"singleton",void 0);let ee=Z.get(),et=["param1","param2","param3","param4","param5","param6","param7","param8","param9","param10","param11","param12","param13","param14","param15","abtest1","abtest2","abtest3","abtest4","abtest5"],er=E("quick-test").setLabel("A/B Quick Test"),ei=Symbol.for("tudePrebidVersionTestEnabled");window[ei]=null!=(a=window[ei])&&a;var es="6d07eaf46b07ea9f2983a2cff3aaae79";class en extends Error{response;request;options;constructor(e,t,r){let i=e.status||0===e.status?e.status:"",s=e.statusText||"",n=`${i} ${s}`.trim();super(`Request failed with ${n?`status code ${n}`:"an unknown error"}: ${t.method} ${t.url}`),this.name="HTTPError",this.response=e,this.request=t,this.options=r}}class eo extends Error{request;constructor(e){super(`Request timed out: ${e.method} ${e.url}`),this.name="TimeoutError",this.request=e}}let ea=(()=>{let e=!1,t=!1,r="function"==typeof globalThis.Request;if("function"==typeof globalThis.ReadableStream&&r)try{t=new globalThis.Request("https://empty.invalid",{body:new globalThis.ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type")}catch(e){if(e instanceof Error&&"unsupported BodyInit type"===e.message)return!1;throw e}return e&&!t})(),el="function"==typeof globalThis.AbortController,ed="function"==typeof globalThis.ReadableStream,eu="function"==typeof globalThis.FormData,eh=["get","post","put","patch","head","delete"],ec={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*"},ep=new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length,ef=Symbol("stop"),eg={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0},eb={method:!0,headers:!0,body:!0,mode:!0,credentials:!0,cache:!0,redirect:!0,referrer:!0,referrerPolicy:!0,integrity:!0,keepalive:!0,signal:!0,window:!0,dispatcher:!0,duplex:!0,priority:!0},em=e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[r,i]of e)t+=ep,t+=new TextEncoder().encode(`Content-Disposition: form-data; name="${r}"`).length,t+="string"==typeof i?new TextEncoder().encode(i).length:i.size;return t}if(e instanceof Blob)return e.size;if(e instanceof ArrayBuffer)return e.byteLength;if("string"==typeof e)return new TextEncoder().encode(e).length;if(e instanceof URLSearchParams)return new TextEncoder().encode(e.toString()).length;if("byteLength"in e)return e.byteLength;if("object"==typeof e&&null!==e)try{let t=JSON.stringify(e);return new TextEncoder().encode(t).length}catch{}return 0},ey=(e,t)=>{let r=Number(e.headers.get("content-length"))||0,i=0;return 204===e.status?(t&&t({percent:1,totalBytes:r,transferredBytes:i},new Uint8Array),new Response(null,{status:e.status,statusText:e.statusText,headers:e.headers})):new Response(new ReadableStream({async start(s){let n=e.body.getReader();async function o(){let{done:e,value:a}=await n.read();if(e)return void s.close();t&&(i+=a.byteLength,t({percent:0===r?0:i/r,transferredBytes:i,totalBytes:r},a)),s.enqueue(a),await o()}t&&t({percent:0,transferredBytes:0,totalBytes:r},new Uint8Array),await o()}}),{status:e.status,statusText:e.statusText,headers:e.headers})},ew=(e,t)=>{let r=em(e.body),i=0;return new Request(e,{duplex:"half",body:new ReadableStream({async start(s){let n=e.body instanceof ReadableStream?e.body.getReader():new Response("").body.getReader();async function o(){let{done:e,value:a}=await n.read();if(e){t&&t({percent:1,transferredBytes:i,totalBytes:Math.max(r,i)},new Uint8Array),s.close();return}i+=a.byteLength;let l=0===r?0:i/r;(rnull!==e&&"object"==typeof e,e_=(...e)=>{for(let t of e)if((!ev(t)||Array.isArray(t))&&void 0!==t)throw TypeError("The `options` argument must be an object");return eS({},...e)},eE=(e={},t={})=>{let r=new globalThis.Headers(e),i=t instanceof globalThis.Headers;for(let[e,s]of new globalThis.Headers(t).entries())i&&"undefined"===s||void 0===s?r.delete(e):r.set(e,s);return r};function eR(e,t,r){return Object.hasOwn(t,r)&&void 0===t[r]?[]:eS(e[r]??[],t[r]??[])}let eT=(e={},t={})=>({beforeRequest:eR(e,t,"beforeRequest"),beforeRetry:eR(e,t,"beforeRetry"),afterResponse:eR(e,t,"afterResponse"),beforeError:eR(e,t,"beforeError")}),eS=(...e)=>{let t={},r={},i={};for(let s of e)if(Array.isArray(s))Array.isArray(t)||(t=[]),t=[...t,...s];else if(ev(s)){for(let[e,r]of Object.entries(s))ev(r)&&e in t&&(r=eS(t[e],r)),t={...t,[e]:r};ev(s.hooks)&&(i=eT(i,s.hooks),t.hooks=i),ev(s.headers)&&(r=eE(r,s.headers),t.headers=r)}return t},eP=e=>eh.includes(e)?e.toUpperCase():e,eA={limit:2,methods:["get","put","head","delete","options","trace"],statusCodes:[408,413,429,500,502,503,504],afterStatusCodes:[413,429,503],maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:e=>.3*2**(e-1)*1e3},ex=(e={})=>{if("number"==typeof e)return{...eA,limit:e};if(e.methods&&!Array.isArray(e.methods))throw Error("retry.methods must be an array");if(e.statusCodes&&!Array.isArray(e.statusCodes))throw Error("retry.statusCodes must be an array");return{...eA,...e}};var eL=r(86964).Promise;async function eC(e,t,r,i){return new eL((s,n)=>{let o=setTimeout(()=>{r&&r.abort(),n(new eo(e))},i.timeout);i.fetch(e,t).then(s).catch(n).then(()=>{clearTimeout(o)})})}var ek=r(86964).Promise;async function ej(e,{signal:t}){return new ek((r,i)=>{function s(){clearTimeout(n),i(t.reason)}t&&(t.throwIfAborted(),t.addEventListener("abort",s,{once:!0}));let n=setTimeout(()=>{t?.removeEventListener("abort",s),r()},e)})}let eI=(e,t)=>{let r={};for(let i in t)i in eb||i in eg||i in e||(r[i]=t[i]);return r};var e$=r(86964).Promise;class eD{static create(e,t){let r=new eD(e,t),i=async()=>{if("number"==typeof r._options.timeout&&r._options.timeout>0x7fffffff)throw RangeError("The `timeout` option cannot be greater than 2147483647");await e$.resolve();let e=await r._fetch();for(let t of r._options.hooks.afterResponse){let i=await t(r.request,r._options,r._decorateResponse(e.clone()));i instanceof globalThis.Response&&(e=i)}if(r._decorateResponse(e),!e.ok&&r._options.throwHttpErrors){let t=new en(e,r.request,r._options);for(let e of r._options.hooks.beforeError)t=await e(t);throw t}if(r.request.bodyUsed||await r.request.body?.cancel(),r._options.onDownloadProgress){if("function"!=typeof r._options.onDownloadProgress)throw TypeError("The `onDownloadProgress` option must be a function");if(!ed)throw Error("Streams are not supported in your environment. `ReadableStream` is missing.");return ey(e.clone(),r._options.onDownloadProgress)}return e},s=r._options.retry.methods.includes(r.request.method.toLowerCase())?r._retry(i):i();for(let[e,i]of Object.entries(ec))s[e]=async()=>{r.request.headers.set("accept",r.request.headers.get("accept")||i);let n=await s;if("json"===e){if(204===n.status||0===(await n.clone().arrayBuffer()).byteLength)return"";if(t.parseJson)return t.parseJson(await n.text())}return n[e]()};return s}request;abortController;_retryCount=0;_input;_options;constructor(e,t={}){if(this._input=e,this._options={...t,headers:eE(this._input.headers,t.headers),hooks:eT({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},t.hooks),method:eP(t.method??this._input.method??"GET"),prefixUrl:String(t.prefixUrl||""),retry:ex(t.retry),throwHttpErrors:!1!==t.throwHttpErrors,timeout:t.timeout??1e4,fetch:t.fetch??globalThis.fetch.bind(globalThis)},"string"!=typeof this._input&&!(this._input instanceof URL||this._input instanceof globalThis.Request))throw TypeError("`input` must be a string, URL, or Request");if(this._options.prefixUrl&&"string"==typeof this._input){if(this._input.startsWith("/"))throw Error("`input` must not begin with a slash when using `prefixUrl`");this._options.prefixUrl.endsWith("/")||(this._options.prefixUrl+="/"),this._input=this._options.prefixUrl+this._input}if(el){let e=this._options.signal??this._input.signal;this.abortController=new globalThis.AbortController,this._options.signal=e?AbortSignal.any([e,this.abortController.signal]):this.abortController.signal}if(ea&&(this._options.duplex="half"),void 0!==this._options.json&&(this._options.body=this._options.stringifyJson?.(this._options.json)??JSON.stringify(this._options.json),this._options.headers.set("content-type",this._options.headers.get("content-type")??"application/json")),this.request=new globalThis.Request(this._input,this._options),this._options.searchParams){let e="string"==typeof this._options.searchParams?this._options.searchParams.replace(/^\?/,""):new URLSearchParams(this._options.searchParams).toString(),t=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,"?"+e);(eu&&this._options.body instanceof globalThis.FormData||this._options.body instanceof URLSearchParams)&&!(this._options.headers&&this._options.headers["content-type"])&&this.request.headers.delete("content-type"),this.request=new globalThis.Request(new globalThis.Request(t,{...this.request}),this._options)}if(this._options.onUploadProgress){if("function"!=typeof this._options.onUploadProgress)throw TypeError("The `onUploadProgress` option must be a function");if(!ea)throw Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request.body&&(this.request=ew(this.request,this._options.onUploadProgress))}}_calculateRetryDelay(e){if(this._retryCount++,this._retryCount>this._options.retry.limit||e instanceof eo)throw e;if(e instanceof en){if(!this._options.retry.statusCodes.includes(e.response.status))throw e;let t=e.response.headers.get("Retry-After")??e.response.headers.get("RateLimit-Reset")??e.response.headers.get("X-RateLimit-Reset")??e.response.headers.get("X-Rate-Limit-Reset");if(t&&this._options.retry.afterStatusCodes.includes(e.response.status)){let e=1e3*Number(t);Number.isNaN(e)?e=Date.parse(t)-Date.now():e>=Date.parse("2024-01-01")&&(e-=Date.now());let r=this._options.retry.maxRetryAfter??e;return ethis._options.parseJson(await e.text())),e}async _retry(e){try{return await e()}catch(r){let t=Math.min(this._calculateRetryDelay(r),0x7fffffff);if(this._retryCount<1)throw r;for(let e of(await ej(t,{signal:this._options.signal}),this._options.hooks.beforeRetry))if(await e({request:this.request,options:this._options,error:r,retryCount:this._retryCount})===ef)return;return this._retry(e)}}async _fetch(){for(let e of this._options.hooks.beforeRequest){let t=await e(this.request,this._options);if(t instanceof Request){this.request=t;break}if(t instanceof Response)return t}let e=eI(this.request,this._options),t=this.request;return(this.request=t.clone(),!1===this._options.timeout)?this._options.fetch(t,e):eC(t,e,this.abortController,this._options)}}/*! MIT License © Sindre Sorhus */let eq=e=>{let t=(t,r)=>eD.create(t,e_(e,r));for(let r of eh)t[r]=(t,i)=>eD.create(t,e_(e,i,{method:r}));return t.create=e=>eq(e_(e)),t.extend=t=>("function"==typeof t&&(t=t(e??{})),eq(e_(e,t))),t.stop=ef,t},eO=eq();var eN=r(86964).Promise;let eM={gdpr:{country:"GB",region:"ENG",city:"London",postalCode:"W1B"},ccpa:{country:"US",region:"CA",city:"San Francisco",postalCode:"94107"},none:{country:"US",region:"IL",city:"Chicago",postalCode:"60007"}},eU="aditude_geo";if(p(eU)){let t=p(eU);eM[t]&&(e=eM[t])}let eF=!1,eB=new eN(e=>{i=e});async function eG(r="https://geo-location.prebid.cloud/v1/geo"){if(e)return e;if(t||eF)return eB;let s=window.localStorage.getItem("cwgl");if(s){let e=window.localStorage.getItem("cwglt");(p("aditude_nocache")||!e||Date.now()-parseInt(e)>36e5)&&(s=!1)}if(s)t=JSON.parse(s),i(t);else{eF=!0;try{let e=await eO.get(r||"https://geo-location.prebid.cloud/v1/geo",{timeout:3e3}).json();window.localStorage.setItem("cwgl",JSON.stringify(e)),window.localStorage.setItem("cwglt",JSON.stringify(Date.now())),t=e,i(t)}catch(e){E().error(e),i(t)}}return eB}let eH=c("tude_dev")||p("tude_dev")||f("tude_dev");if(eH){let e=new URL(document.currentScript.src);if(eH&&e.pathname.match("prebid-load.js")&&!e.searchParams.has("testing")){let t=e.pathname,r=document.createElement("script");throw r.src=`${"stage"===eH?"https://d3g98hgqjqzwq5.cloudfront.net":"https://localhost:9000/static"}${t}?testing`.replace("/static/static/","/static/"),r.async=!1,document.currentScript.after(r),Error("prebid-load.js -- bailing to load script from another environment")}}let eK=document.currentScript;if(null==eK?void 0:eK.src){let e=new URL(eK.src);if(null==e?void 0:e.pathname){if(r.g.__tudeLoadedScripts=r.g.__tudeLoadedScripts||[],r.g.__tudeLoadedScripts.includes(e.pathname))throw Error(`attempted to load file multiple times: ${eK.src}`);r.g.__tudeLoadedScripts.push(e.pathname)}}let ez=(e="",t="")=>{let r="https://dn0qt3r0xannq.cloudfront.net";return(-1!==e.indexOf("vendor/")||-1!==t.indexOf("vendor/"))&&(r="https://dn0qt3r0xannq.cloudfront.net"),r+e+t};var eV=(e,t=!1)=>{let r=document.createElement("link");t&&(r.id=t),r.rel="stylesheet",r.type="text/css",r.href=e,r.media="all",document.getElementsByTagName("head")[0].appendChild(r)},eW=r(86964).Promise;function eJ(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}let eY='"1.4.0"'.replace(/"/g,""),eQ="Loader";E(eQ).setLabel("Loader","red");var eX=class{setForcedModules(e=[]){this.forcedModules=e}appendForcedModules(e=[]){this.forcedModules=[...this.forcedModules,...e]}forceEnablePrebidFork(){this._forceEnablePrebidFork=!0}setForceEnablePrebidFork(e=!0){this._forceEnablePrebidFork=!!e}forcePrebidVersion(e){this._forcePrebidVersion=e}getLibraryLocation(){return this.libraryFolder?this.publisherKey+"/"+this.libraryFolder:this.publisherKey}setLibraryFolder(e){this.libraryFolder=e}setPrebidBuild(e){this.dynamicLibrary=e}setDynamicLibrary(e,t){this.dynamicLibrary={version:e,modules:t}}setLoadRemoteConfig(e=!0){this.loadRemoteConfig=e}disableAnalytics(){this.checkForAnalytics=!1}enableAnalyticsExperiment(){this.checkForAnalytics=!0}disableLibrary(){this.hasLibrary=!1}disable(){this._disabled=!0,E(eQ).advancedLog("Wrapper disabled"),"function"!=typeof window.tudeDisabled&&(window.tudeDisabled=function(){return!0})}setGeo(e=!0){this.geo=e}setGeoEndpoint(e="https://geo-location.prebid.cloud/v1/geo"){E(eQ).advancedLog("Endpoint set: ",e),this.geoEndpoint=e}setGeoTimeout(e=500){this.geoTimeout=e}setWhitelistDomains(e){this.whitelistDomains=e}isDomainWhitelisted(){if(!this.whitelistDomains||0===this.whitelistDomains.length)return!0;let e=window.location.hostname.replace(/^www\./,"");return this.whitelistDomains.some(t=>t.replace(/^www\./,"")===e)}async getGeo(){let e=await eG(this.geoEndpoint);r.g._tudeGeo=e,E(eQ).advancedLog("Global Geo Set",e)}setGlobalPbjsName(e){this.globalPbjsName=e,r.g._tudePbjsGlobal=this.globalPbjsName}setPublisherKey(e){this.publisherKey=e}setResourceVersion(e){this.version=e}setWrapper(e){this.wrapper=e}addPreset(e){e.forEach(e=>{this.addResource(e)})}addResource(e){this.resources[e.name]=e}getCurrentWrapperUrl(e,t=!0){let r="";return this.version&&t&&(r="?v="+this.version),ez(`/${this.publisherKey}/${this.wrapper}`,`/${e}`)+r}createCloudResource(e,t,r,i,s){let n="";this.version&&(n="?v="+this.version);let o={name:e,appendTo:d.Head,async:i,trigger:s,url:ez(`/${t}`,`/${r}`)+n};this.addResource(o)}async start(){if(E(eQ).advancedLog("Loader starting at: ",Math.floor(performance.now()).toString()),this._disabled)return void E(eQ).advancedLog("Loader disabled, skipping start");if(!this.isDomainWhitelisted())return void E(eQ).advancedLog("Domain not whitelisted, skipping loader");if(await this.maybeLoadRemoteConfig(),this.hasLibrary&&this.addLibrary(),this.addWrapper(),Object.keys(this.resources).reverse().forEach(e=>{try{let t=this.resources[e];if((!t.type||"js"===t.type)&&!document.querySelector(`link[rel="preload"][as="script"][href="${t.url}"]`)){let e=document.createElement("link");e.rel="preload",e.as="script",e.href=t.url,document.head&&document.head.appendChild(e)}}catch(e){}}),this.geo){E(eQ).advancedLog("Fetching geo from loader with timeout: ",this.geoTimeout);let e=this.getGeo(),t=new eW(e=>setTimeout(e,this.geoTimeout));await eW.race([e,t])}Object.keys(this.resources).forEach(e=>{let t=this.resources[e];(void 0===t.trigger||!t.trigger||t.trigger())&&(void 0===t.type||"js"===t.type?l(this._createUrl(t.url),t.appendTo,t.async||!1,t.defer||!1,t.dataAttributes||[],t.attributes||[]):eV(this._createUrl(t.url),t.id))}),E(eQ).advancedLog("Loader finished at: ",Math.floor(performance.now()).toString())}maybeAddDynamicLibrary(){if(this.dynamicLibrary){p("prebid_version_override")&&(this._forcePrebidVersion=p("prebid_version_override"));let{version:e,modules:t,fork:r=!0}=this.dynamicLibrary,i=this.globalPbjsName,s=new URL(`https://edge.aditude.io/prebid/${this._forcePrebidVersion||e}.js`);"pbjs"!==i&&s.searchParams.set("var",i),(!1!==r||this._forceEnablePrebidFork)&&s.searchParams.set("fork","1");let n=[...new Set([...t,...this.forcedModules,...this.mandatoryModules])];n.includes("aditude")&&es&&s.searchParams.set("v",es),n.forEach((e,t)=>{"cpmstarBidAdapter"===e&&(n[t]="cpmstarCustomBidAdapter")}),[].forEach(e=>{let t=n.indexOf(e);t>-1&&n.splice(t,1)});let o=window.btoa(JSON.stringify(n.sort()));s.searchParams.set("modules",o);let a={name:"library",appendTo:d.Head,async:!0,trigger:()=>(!window[i]||!window[i].getConfig||"function"!=typeof window[i].getConfig)&&!window[i+"LibraryLoaded"]&&(window[i+"LibraryLoaded"]=!0,!0),url:s.toString()};return this.addResource(a),!0}return!1}setupLoaderFromConfig(){var e,t,r;this.dynamicLibrary=null==(e=window.ADITUDE_WRAPPER_CONFIG)?void 0:e.PBJS_BUILD,this.addPreset((null==(t=window.ADITUDE_WRAPPER_CONFIG)?void 0:t.THIRD_PARTY_SCRIPTS)||[]);let i=null==(r=window.ADITUDE_WRAPPER_CONFIG)?void 0:r.PREBID_GLOBAL;"string"==typeof i&&""!==i.trim()&&this.setGlobalPbjsName(i.trim())}async maybeLoadRemoteConfig(){return"object"==typeof window.ADITUDE_WRAPPER_CONFIG?(this.setupLoaderFromConfig(),!0):!!this.loadRemoteConfig}addLibrary(){if(this.maybeAddDynamicLibrary())return;let e=this.getLibraryLocation();this.createCloudResource("library",e,"prebid-library.js",!0,()=>(!window[this.globalPbjsName]||!window[this.globalPbjsName].getConfig||"function"!=typeof window[this.globalPbjsName].getConfig)&&!window[this.globalPbjsName+"LibraryLoaded"]&&(window[this.globalPbjsName+"LibraryLoaded"]=!0,!0))}addWrapper(){this.createCloudResource("wrapper",this.publisherKey+"/"+this.wrapper,"prebid-wrapper.js",!1)}_createUrl(e){return e}constructor(e,t=eY){eJ(this,"resources",{}),eJ(this,"globalPbjsName","pbjs"),eJ(this,"libraryFolder",void 0),eJ(this,"dynamicLibrary",void 0),eJ(this,"loadRemoteConfig",!1),eJ(this,"publisherKey",void 0),eJ(this,"hasLibrary",!0),eJ(this,"version",'"1.4.0"'),eJ(this,"wrapper",""),eJ(this,"checkForAnalytics",!0),eJ(this,"geo",!0),eJ(this,"geoEndpoint","https://geo-location.prebid.cloud/v1/geo"),eJ(this,"geoTimeout",500),eJ(this,"whitelistDomains",[]),eJ(this,"_forceEnablePrebidFork",!1),eJ(this,"_forcePrebidVersion",!1),eJ(this,"_disabled",!1),eJ(this,"forcedModules",["33acrossIdSystem","criteoIdSystem","gptPreAuction","id5IdSystem","pubProvidedIdSystem","sharedIdSystem","unifiedIdSystem","consentManagement","consentManagementGpp","gdprEnforcement","allowActivities"]),eJ(this,"mandatoryModules",["aditude"]),this.publisherKey=e,this.version=t,s.isEnabled()&&this.forcedModules.push("lotamePanoramaIdSystem")}},eZ=[{name:"gpt",appendTo:d.Head,async:!0,url:"https://securepubads.g.doubleclick.net/tag/js/gpt.js",external:!0,trigger:()=>!window.googletag||!window.googletag.apiReady}];let e0={name:"kueez",appendTo:d.Head,async:!0,url:"https://static.kueezrtb.com/latest.js"};var e1=JSON.parse('{"version":"9.19.0","modules":["appnexusBidAdapter","consentManagement","consentManagementUsp","criteoBidAdapter","enrichmentFpdModule","gdprEnforcement","gptPreAuction","id5IdSystem","ixBidAdapter","liveIntentIdSystem","medianetBidAdapter","openwebBidAdapter","pubmaticBidAdapter","priceFloors","rubiconBidAdapter","sharedIdSystem","tripleliftBidAdapter","ttdBidAdapter","unifiedIdSystem"]}');r.g.SKIP_DOM_READY_CHECK=!0,function({enabledPercent:e=50,gamCustom:t=111,insightsCustom:r,ayCustom:i,prebidBuild:s}){let n="prebid-v9";window[ei]=function({name:e,date:t,condition:r=!0,tracking:i,variants:s,insights:n=!1,trackNonCondition:o=!1}){let a,l=`${t}_${e}`,d=`${t}_${e}_${s.map(e=>e.percent).join("_")}`;if(!r&&!o)return void E().log(`Experiment "${e}" is not conditionally enabled, skipping test and tracking`);if(!Array.isArray(s)||0===s.length)return void er.error(`Experiment "${e}" must have at least one variant.`);let u=0,h=new Set,c=0;for(let t of s){if("number"!=typeof t.percent||t.percent<0||t.percent>100)return void er.error(`Variant "${t.name}" has an invalid percent value: ${t.percent}. Must be a number between 0 and 100.`);if(h.has(t.name))return void er.error(`Duplicate variant name "${t.name}" found in experiment "${e}". Variant names must be unique.`);!0===t.control&&(c++,a=t.name),h.add(t.name),u+=t.percent}let p=1!==c;if(0===c&&er.error(`Experiment "${e}" must have exactly one variant with control: true. Found none.`),c>1&&er.error(`Experiment "${e}" must have exactly one variant with control: true. Found ${c}.`),100!==u)return void er.error(`Total percentage for experiment "${e}" is ${u}, but it must equal 100.`);if(!1!==n&&!et.includes(n))return void er.error(`Invalid insights parameter "${n}" provided for experiment "${e}".`);let f=N.createExperiment(d);s.forEach(e=>{f.variant({name:e.name,value:e.value,percentage:e.percent})});let g=f.pick();try{let t=[e,d,l];ee.setResult(d,{variant:g.variant,value:g.value},t)}catch(e){E().error("ExperimentManager.setResult failed",e)}if(n){let e=1===c&&g.variant===a,t=s.find(e=>e.name===g.variant),r=null==t?void 0:t.percent;A({[n]:`${l}_${p?"error":e?"control":"test"}_${g.variant.replace("_","-")}_${r}`})}return(er.log(e,g),i&&Y.setTargeting({[`tude_${i}`]:g.variant}),!r&&o)?void E().log(`Experiment "${e}" is not conditionally enabled, still tracking variant ${g.variant} for ${n} / ${i}`):g.value}({date:"00000000",name:n,tracking:t?`custom_${t}`:"",variants:[{name:"test",value:!0,percent:e,control:!1},{name:"control",value:!1,percent:100-e,control:!0}]}),window[ei]&&(s.version="9.19.0");let o=window[ei]?`${n}@test`:`${n}@control`;r&&A({[r]:o}),i&&(window.assertiveQueue=window.assertiveQueue||[],window.assertiveQueue.push(()=>{var e,t;window.assertive=window.assertive||{},(null==(t=window.assertive)||null==(e=t.analytics)?void 0:e.custom)&&(window.assertive.analytics.custom[`custom_${i}`]=o)})),window[ei]}({prebidBuild:e1,insightsCustom:"param8",enabledPercent:25}),eZ.forEach(e=>{"https://www.googletagservices.com/tag/js/gpt.js"===e.url&&(e.url="https://securepubads.g.doubleclick.net/tag/js/gpt.js")});let e3=new eX("patch-PN1j7qIXuE",!1);e3.addPreset(eZ),e3.setLibraryFolder("patch-longform"),e3.setWrapper("patch-longform"),e3.setPrebidBuild(e1),e3.addResource(e0),e3.addResource({name:"adlightning",appendTo:d.Head,async:!1,url:"https://tagan.adlightning.com/patch/op.js"}),e3.start()}()}();